-- XSD schema extracted from ITU-T F.515 (04/2003)
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema targetNamespace="http://www.itu/itu-t/Rec/f515/xsd" xmlns:uds="http://www.itu/itu-t/Rec/f515/xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="unqualified" attributeFormDefault="unqualified">
<xs:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd"/>
<xs:complexType name="ProviderId">
<xs:sequence>
<xs:element ref="uds:country"/>
<xs:element ref="uds:dmdName" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:simpleType name="NumericString">
<xs:restriction base="xs:string">
<xs:pattern value="[0-9]*"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="Ub16NumericString">
<xs:restriction base="xs:string">
<xs:maxLength value="16"/>
<xs:pattern value="[0-9]*"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="Ub32">
<xs:restriction base="xs:string">
<xs:maxLength value="32"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="Ub40">
<xs:restriction base="xs:string">
<xs:maxLength value="40"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="Ub64">
<xs:restriction base="xs:string">
<xs:maxLength value="64"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="Ub128">
<xs:restriction base="xs:string">
<xs:maxLength value="128"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="Ub256">
<xs:restriction base="xs:string">
<xs:maxLength value="256"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="Ub512">
<xs:restriction base="xs:string">
<xs:maxLength value="512"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="Ub1024">
<xs:restriction base="xs:string">
<xs:maxLength value="1024"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="AttributeType">
<xs:restriction base="xs:NCName">
<xs:enumeration value="country"/>
<xs:enumeration value="locality"/>
<xs:enumeration value="stateOrProvince"/>
<xs:enumeration value="streetAddress"/>
<xs:enumeration value="houseId"/>
<xs:enumeration value="givenName"/>
<xs:enumeration value="title"/>
<xs:enumeration value="description"/>
<xs:enumeration value="businessCategory"/>
<xs:enumeration value="postalCode"/>
<xs:enumeration value="postOfficeBox"/>
<xs:enumeration value="dmdName"/>
<xs:enumeration value="LocalityCode"/>
<xs:enumeration value="localityNDC"/>
<xs:enumeration value="subscriberName"/>
<xs:enumeration value="subscriberType"/>
<xs:enumeration value="secondFamilyName"/>
<xs:enumeration value="profession"/>
<xs:enumeration value="language"/>
<xs:enumeration value="telephone"/>
<xs:enumeration value="orAddress"/>
<xs:enumeration value="mail"/>
<xs:enumeration value="url"/>
<xs:enumeration value="commService"/>
<xs:enumeration value="commNetwork"/>
<xs:enumeration value="addrValidFrom"/>
<xs:enumeration value="addrValidUntil"/>
<xs:enumeration value="addrValidity"/>
<xs:enumeration value="addrCoverage"/>
<xs:enumeration value="addrTariff"/>
<xs:enumeration value="addrRestriction"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="AttributeTypes">
<xs:list itemType="uds:AttributeType"/>
</xs:simpleType>
<xs:simpleType name="SearchType">
<xs:restriction base="xs:NCName">
<xs:enumeration value="searchForStateOrProvince"/>
<xs:enumeration value="searchForLocality"/>
<xs:enumeration value="subscriberWithinLocality"/>
<xs:enumeration value="subscriberByEntryIdentifier"/>
<xs:enumeration value="subscriberWithinStateOrProvince"/>
<xs:enumeration value="subscriberWithinCountry"/>
<xs:enumeration value="searchForStreetAddress"/>
<xs:enumeration value="subscriberByStreetAddress"/>
<xs:enumeration value="subscriberByCommunicationsAddress"/>
<xs:enumeration value="subscriberByBusinessCategory"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="HierarchySelection">
<xs:restriction base="xs:NCName">
<xs:enumeration value="self"/>
<xs:enumeration value="children"/>
<xs:enumeration value="parent"/>
<xs:enumeration value="hierarchy"/>
<xs:enumeration value="top"/>
<xs:enumeration value="subtree"/>
<xs:enumeration value="all"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="HierarchySelections">
<xs:list itemType="uds:HierarchySelection"/>
</xs:simpleType>
<xs:simpleType name="SearchOption">
<xs:restriction base="xs:NCName">
<xs:enumeration value="performExactly"/>
<xs:enumeration value="includeAllAreas"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="SearchOptions">
<xs:list itemType="uds:SearchOption"/>
</xs:simpleType>
<xs:complexType name="Filter">
<xs:choice maxOccurs="unbounded">
<xs:element ref="uds:Assertion"/>
<xs:element ref="uds:Substrings"/>
</xs:choice>
</xs:complexType>
<xs:element name="Attribute" abstract="true"/>
<xs:element name="Family" abstract="true"/>
<xs:element name="Assertion" abstract="true"/>
<xs:attributeGroup name="assertionAttr">
<xs:attribute name="weight" use="optional" default="high">
<xs:simpleType>
<xs:restriction base="xs:NCName">
<xs:enumeration value="low"/>
<xs:enumeration value="high"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:attributeGroup>
<xs:element name="Substrings" abstract="true">
<xs:complexType>
<xs:sequence>
<xs:element name="value" maxOccurs="unbounded">
<xs:complexType>
<xs:attributeGroup ref="uds:substringValueAttr"/>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="uds:substringAttr"/>
</xs:complexType>
</xs:element>
<xs:attributeGroup name="substringAttr">
<xs:attribute name="string" use="optional" default="exact">
<xs:simpleType>
<xs:restriction base="xs:NCName">
<xs:enumeration value="exact"/>
<xs:enumeration value="deletion"/>
<xs:enumeration value="restrDeletion"/>
<xs:enumeration value="permutation"/>
<xs:enumeration value="permutationAndDeletion"/>
<xs:enumeration value="providerDefined"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="weight" use="optional" default="high">
<xs:simpleType>
<xs:restriction base="xs:NCName">
<xs:enumeration value="low"/>
<xs:enumeration value="high"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:attributeGroup>
<xs:attributeGroup name="substringValueAttr">
<xs:attribute name="wordMatch" use="optional" default="exact">
<xs:simpleType>
<xs:restriction base="xs:NCName">
<xs:enumeration value="exact"/>
<xs:enumeration value="truncated"/>
<xs:enumeration value="phonetic"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="characterMatch" use="optional" default="caseIgnore">
<xs:simpleType>
<xs:restriction base="xs:NCName">
<xs:enumeration value="exact"/>
<xs:enumeration value="caseIgnore"/>
<xs:enumeration value="mapped"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:attributeGroup>
<xs:element name="commsAddress" substitutionGroup="uds:Family">
<xs:complexType>
<xs:sequence>
<xs:element ref="uds:Attribute" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="country" type="xs:NMTOKEN" substitutionGroup="uds:Attribute"/>
<xs:element name="countryAs" substitutionGroup="uds:Assertion">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:NMTOKEN">
<xs:attributeGroup ref="uds:assertionAttr"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="locality" type="uds:Ub128" substitutionGroup="uds:Attribute"/>
<xs:element name="localitySub" substitutionGroup="uds:Substrings">
<xs:complexType>
<xs:sequence>
<xs:element name="value" type="uds:Ub128" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attributeGroup ref="uds:substringAttr"/>
</xs:complexType>
</xs:element>
<xs:element name="stateOrProvince" type="uds:Ub128" substitutionGroup="uds:Attribute"/>
<xs:element name="stateOrProvinceSub" substitutionGroup="uds:Substrings">
<xs:complexType>
<xs:sequence>
<xs:element name="value" maxOccurs="unbounded">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="uds:Ub128">
<xs:attributeGroup ref="uds:substringValueAttr"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="uds:substringAttr"/>
</xs:complexType>
</xs:element>
<xs:element name="streetAddress" type="uds:Ub128" substitutionGroup="uds:Attribute"/>
<xs:element name="streetAddressSub" substitutionGroup="uds:Substrings">
<xs:complexType>
<xs:sequence>
<xs:element name="value" maxOccurs="unbounded">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="uds:Ub128">
<xs:attributeGroup ref="uds:substringValueAttr"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="uds:substringAttr"/>
</xs:complexType>
</xs:element>
<xs:element name="houseId" type="uds:Ub64" substitutionGroup="uds:Attribute"/>
<xs:element name="houseIdSub" substitutionGroup="uds:Substrings">
<xs:complexType>
<xs:sequence>
<xs:element name="value" maxOccurs="unbounded">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="uds:Ub64">
<xs:attributeGroup ref="uds:substringValueAttr"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="uds:substringAttr"/>
</xs:complexType>
</xs:element>
<xs:element name="givenName" type="uds:Ub64" substitutionGroup="uds:Attribute"/>
<xs:element name="givenNameSub" substitutionGroup="uds:Substrings">
<xs:complexType>
<xs:sequence>
<xs:element name="value" maxOccurs="unbounded">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="uds:Ub64">
<xs:attributeGroup ref="uds:substringValueAttr"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="uds:substringAttr"/>
</xs:complexType>
</xs:element>
<xs:element name="title" substitutionGroup="uds:Attribute">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="uds:Ub64">
<xs:attribute ref="xml:lang"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="titleSub" substitutionGroup="uds:Substrings">
<xs:complexType>
<xs:sequence>
<xs:element name="value" maxOccurs="unbounded">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="uds:Ub64">
<xs:attributeGroup ref="uds:substringValueAttr"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="uds:substringAttr"/>
</xs:complexType>
</xs:element>
<xs:element name="description" substitutionGroup="uds:Attribute">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="uds:Ub1024">
<xs:attribute ref="xml:lang"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="businessCategory" substitutionGroup="uds:Attribute">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="uds:Ub128">
<xs:attribute ref="xml:lang"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="businessCategorySub" substitutionGroup="uds:Substrings">
<xs:complexType>
<xs:sequence>
<xs:element name="value" maxOccurs="unbounded">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="uds:Ub128">
<xs:attributeGroup ref="uds:substringValueAttr"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="uds:substringAttr"/>
</xs:complexType>
</xs:element>
<xs:element name="postalCode" type="uds:Ub40" substitutionGroup="uds:Attribute"/>
<xs:element name="postalCodeSub" substitutionGroup="uds:Substrings">
<xs:complexType>
<xs:sequence>
<xs:element name="value" maxOccurs="unbounded">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="uds:Ub40">
<xs:attributeGroup ref="uds:substringValueAttr"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="uds:substringAttr"/>
</xs:complexType>
</xs:element>
<xs:element name="postOfficeBox" type="uds:Ub40" substitutionGroup="uds:Attribute"/>
<xs:element name="postOfficeBoxSub" substitutionGroup="uds:Substrings">
<xs:complexType>
<xs:sequence>
<xs:element name="value" maxOccurs="unbounded">
<xs:complexType>
<xs:attributeGroup ref="uds:substringValueAttr"/>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="uds:substringAttr"/>
</xs:complexType>
</xs:element>
<xs:element name="dmdName" type="uds:Ub64" substitutionGroup="uds:Attribute"/>
<xs:element name="dmdNameSub" substitutionGroup="uds:Substrings">
<xs:complexType>
<xs:sequence>
<xs:element name="value" maxOccurs="unbounded">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="uds:Ub64">
<xs:attributeGroup ref="uds:substringValueAttr"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="uds:substringAttr"/>
</xs:complexType>
</xs:element>
<xs:element name="localityCode" type="uds:Ub64" substitutionGroup="uds:Attribute"/>
<xs:element name="localityCodeAs" substitutionGroup="uds:Assertion">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="uds:Ub64">
<xs:attributeGroup ref="uds:assertionAttr"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="localityNDC" type="uds:Ub16NumericString" substitutionGroup="uds:Attribute"/>
<xs:element name="localityNDCAs" substitutionGroup="uds:Assertion">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="uds:Ub16NumericString">
<xs:attributeGroup ref="uds:assertionAttr"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="subscriberName" substitutionGroup="uds:Attribute">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="uds:Ub64">
<xs:attribute ref="xml:lang"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="subscriberNameSub" substitutionGroup="uds:Substrings">
<xs:complexType>
<xs:sequence>
<xs:element name="value" maxOccurs="unbounded">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="uds:Ub64">
<xs:attributeGroup ref="uds:substringValueAttr"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="uds:substringAttr"/>
</xs:complexType>
</xs:element>
<xs:simpleType name="SubscrType">
<xs:restriction base="xs:NCName">
<xs:enumeration value="residential"/>
<xs:enumeration value="organization"/>
<xs:enumeration value="government"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="SubscrTypes">
<xs:list itemType="uds:SubscrType"/>
</xs:simpleType>
<xs:element name="subscriberType" type="uds:SubscrTypes" substitutionGroup="uds:Attribute"/>
<xs:element name="subscriberTypeAs" substitutionGroup="uds:Assertion">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="uds:SubscrType">
<xs:attributeGroup ref="uds:assertionAttr"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="secondFamilyName" type="uds:Ub128" substitutionGroup="uds:Attribute"/>
<xs:element name="secondFamilyNameSub" substitutionGroup="uds:Substrings">
<xs:complexType>
<xs:sequence>
<xs:element name="value" maxOccurs="unbounded">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="uds:Ub128">
<xs:attributeGroup ref="uds:substringValueAttr"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="uds:substringAttr"/>
</xs:complexType>
</xs:element>
<xs:element name="profession" substitutionGroup="uds:Attribute">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="uds:Ub128">
<xs:attribute ref="xml:lang"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="professionSub" substitutionGroup="uds:Substrings">
<xs:complexType>
<xs:sequence>
<xs:element name="value" maxOccurs="unbounded">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="uds:Ub128">
<xs:attributeGroup ref="uds:substringValueAttr"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="uds:substringAttr"/>
</xs:complexType>
</xs:element>
<xs:element name="language" type="xs:language" substitutionGroup="uds:Attribute"/>
<xs:element name="languageAs" substitutionGroup="uds:Assertion">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:language">
<xs:attributeGroup ref="uds:assertionAttr"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="telephone" type="uds:Ub32" substitutionGroup="uds:Attribute"/>
<xs:element name="telephoneSub" substitutionGroup="uds:Substrings">
<xs:complexType>
<xs:sequence>
<xs:element name="value" maxOccurs="unbounded">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="uds:Ub32">
<xs:attributeGroup ref="uds:substringValueAttr"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="uds:substringAttr"/>
</xs:complexType>
</xs:element>
<xs:element name="orAddress" type="uds:Ub1024" substitutionGroup="uds:Attribute"/>
<xs:element name="orAddressSub" substitutionGroup="uds:Substrings">
<xs:complexType>
<xs:sequence>
<xs:element name="value" maxOccurs="unbounded">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="uds:Ub1024">
<xs:attributeGroup ref="uds:substringValueAttr"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="uds:substringAttr"/>
</xs:complexType>
</xs:element>
<xs:element name="mail" type="uds:Ub256" substitutionGroup="uds:Attribute"/>
<xs:element name="mailSub" substitutionGroup="uds:Substrings">
<xs:complexType>
<xs:sequence>
<xs:element name="value" maxOccurs="unbounded">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="uds:Ub256">
<xs:attributeGroup ref="uds:substringValueAttr"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="uds:substringAttr"/>
</xs:complexType>
</xs:element>
<xs:element name="url" type="uds:Ub1024" substitutionGroup="uds:Attribute"/>
<xs:element name="urlSub" substitutionGroup="uds:Substrings">
<xs:complexType>
<xs:sequence>
<xs:element name="value" maxOccurs="unbounded">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="uds:Ub1024">
<xs:attributeGroup ref="uds:substringValueAttr"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="uds:substringAttr"/>
</xs:complexType>
</xs:element>
<xs:simpleType name="ComServiceType">
<xs:restriction base="xs:NCName">
<xs:enumeration value="voice"/>
<xs:enumeration value="fax"/>
<xs:enumeration value="textPhone"/>
<xs:enumeration value="videoPhone"/>
<xs:enumeration value="publicPhoneBox"/>
<xs:enumeration value="switchBoard"/>
<xs:enumeration value="pager"/>
<xs:enumeration value="data"/>
<xs:enumeration value="e-mail"/>
<xs:enumeration value="web"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="ComServiceTypes">
<xs:list itemType="uds:ComServiceType"/>
</xs:simpleType>
<xs:element name="commService" type="uds:ComServiceTypes" substitutionGroup="uds:Attribute"/>
<xs:element name="commServiceAs" substitutionGroup="uds:Assertion">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="uds:ComServiceType">
<xs:attributeGroup ref="uds:assertionAttr"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:simpleType name="NetworkType">
<xs:restriction base="xs:NCName">
<xs:enumeration value="pstn"/>
<xs:enumeration value="isdn"/>
<xs:enumeration value="gsm"/>
<xs:enumeration value="umts"/>
<xs:enumeration value="internet"/>
</xs:restriction>
</xs:simpleType>
<xs:element name="commNetwork" type="uds:NetworkType" substitutionGroup="uds:Attribute"/>
<xs:element name="commNetworkAs">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="uds:NetworkType">
<xs:attributeGroup ref="uds:assertionAttr"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="addrValidFrom" type="xs:dateTime" substitutionGroup="uds:Attribute"/>
<xs:element name="addrValidUntil" type="xs:dateTime" substitutionGroup="uds:Attribute"/>
<xs:simpleType name="AddrValidityType">
<xs:restriction base="xs:NCName">
<xs:enumeration value="current"/>
<xs:enumeration value="old"/>
<xs:enumeration value="future"/>
<xs:enumeration value="temporary"/>
</xs:restriction>
</xs:simpleType>
<xs:element name="addrValidity" type="uds:AddrValidityType" substitutionGroup="uds:Attribute"/>
<xs:element name="addrValidityAs" substitutionGroup="uds:Assertion">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="uds:AddrValidityType">
<xs:attributeGroup ref="uds:assertionAttr"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:simpleType name="AddrCoverageType">
<xs:restriction base="xs:NCName">
<xs:enumeration value="international"/>
<xs:enumeration value="national"/>
<xs:enumeration value="stateOrProvince"/>
<xs:enumeration value="locality"/>
</xs:restriction>
</xs:simpleType>
<xs:element name="addrCoverage" type="uds:AddrCoverageType" substitutionGroup="uds:Attribute"/>
<xs:element name="addrCoverageAs" substitutionGroup="uds:Assertion">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="uds:AddrCoverageType">
<xs:attributeGroup ref="uds:assertionAttr"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:simpleType name="AddrTariffType">
<xs:restriction base="xs:NCName">
<xs:enumeration value="normal"/>
<xs:enumeration value="premium"/>
<xs:enumeration value="toll-free"/>
</xs:restriction>
</xs:simpleType>
<xs:element name="addrTariff" type="uds:AddrTariffType" substitutionGroup="uds:Attribute"/>
<xs:element name="addrTariffAs" substitutionGroup="uds:Assertion">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="uds:AddrTariffType">
<xs:attributeGroup ref="uds:assertionAttr"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:simpleType name="AddrRestrictionType">
<xs:restriction base="xs:NCName">
<xs:enumeration value="public"/>
<xs:enumeration value="secret"/>
<xs:enumeration value="call-screen"/>
<xs:enumeration value="no-marketing"/>
<xs:enumeration value="complete-only"/>
</xs:restriction>
</xs:simpleType>
<xs:element name="addrRestriction" type="uds:AddrRestrictionType" substitutionGroup="uds:Attribute"/>
<xs:element name="addrRestrictionAs" substitutionGroup="uds:Assertion">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="uds:AddrRestrictionType">
<xs:attributeGroup ref="uds:assertionAttr"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="Notification" abstract="true"/>
<xs:element name="limitProblem" substitutionGroup="uds:Notification">
<xs:simpleType>
<xs:restriction base="xs:NCName">
<xs:enumeration value="adminLimit"/>
<xs:enumeration value="permanentRestriction"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="serviceProblem" substitutionGroup="uds:Notification">
<xs:simpleType>
<xs:restriction base="xs:NCName">
<xs:enumeration value="hierSelectForbidden"/>
<xs:enumeration value="hierSelectNotAvailableForService"/>
<xs:enumeration value="hierSelectNotSupported"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="searchType" type="uds:SearchType" substitutionGroup="uds:Notification"/>
<xs:element name="attributeTypeList" type="uds:AttributeTypes" substitutionGroup="uds:Notification"/>
<xs:element name="filterNot" type="uds:Filter" substitutionGroup="uds:Notification"/>
<xs:element name="filterItem" substitutionGroup="uds:Notification">
<xs:complexType>
<xs:choice maxOccurs="unbounded">
<xs:element ref="uds:Assertion"/>
<xs:element ref="uds:Substrings"/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name="providerName" type="uds:ProviderId" substitutionGroup="uds:Notification"/>
<xs:element name="hierarchySelectList" type="uds:HierarchySelections"
substitutionGroup="uds:Notification"/>
<xs:element name="searchControlOptionsList" type="uds:SearchOptions"
substitutionGroup="uds:Notification"/>
<xs:complexType name="AttributeCombinations">
<xs:choice maxOccurs="unbounded">
<xs:element name="attributeType" type="uds:AttributeType"/>
<xs:element name="or" type="uds:Cor"/>
<xs:element name="not" type="uds:AttributeCombinations"/>
</xs:choice>
</xs:complexType>
<xs:complexType name="Cor">
<xs:choice maxOccurs="unbounded">
<xs:element name="attributeType" type="uds:AttributeType"/>
<xs:element name="and" type="uds:Cand"/>
<xs:element name="not" type="uds:AttributeCombinations"/>
</xs:choice>
</xs:complexType>
<xs:complexType name="Cand">
<xs:choice maxOccurs="unbounded">
<xs:element name="attributeType" type="uds:AttributeType"/>
<xs:element name="or" type="uds:Cor"/>
<xs:element name="not" type="uds:AttributeCombinations"/>
</xs:choice>
</xs:complexType>
<xs:element name="attributeCombinations" type="uds:AttributeCombinations"
substitutionGroup="uds:Notification"/>
<xs:simpleType name="StringMatchType">
<xs:restriction base="xs:NCName">
<xs:enumeration value="exact"/>
<xs:enumeration value="deletion"/>
<xs:enumeration value="restrictedDeletion"/>
<xs:enumeration value="permutation"/>
<xs:enumeration value="permutationAndDeletion"/>
<xs:enumeration value="providerDefined"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="StringMatchTypes">
<xs:list itemType="uds:StringMatchType"/>
</xs:simpleType>
<xs:simpleType name="WordMatchType">
<xs:restriction base="xs:NCName">
<xs:enumeration value="exact"/>
<xs:enumeration value="truncated"/>
<xs:enumeration value="phonetic"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="WordMatchTypes">
<xs:list itemType="uds:WordMatchType"/>
</xs:simpleType>
<xs:simpleType name="CharacterMatchType">
<xs:restriction base="xs:NCName">
<xs:enumeration value="exact"/>
<xs:enumeration value="caseIgnore"/>
<xs:enumeration value="mapped"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="CharacterMatchTypes">
<xs:list itemType="uds:CharacterMatchType"/>
</xs:simpleType>
<xs:element name="wordRestriction" substitutionGroup="uds:Notification">
<xs:complexType>
<xs:sequence>
<xs:element name="stringMatchTypes" type="uds:StringMatchTypes" minOccurs="0"/>
<xs:element name="wordMatchTypes" type="uds:WordMatchTypes" minOccurs="0"/>
<xs:element name="characterMatchTypes" type="uds:CharacterMatchTypes" minOccurs="0"/>
</xs:sequence>
<xs:attribute name="attributeType" type="uds:AttributeType" use="optional"/>
<xs:attribute name="initialMinimum" type="xs:positiveInteger" use="optional"/>
<xs:attribute name="otherMinimum" type="xs:positiveInteger" use="optional"/>
</xs:complexType>
</xs:element>
<xs:simpleType name="Option">
<xs:restriction base="xs:NCName">
<xs:enumeration value="paging"/>
<xs:enumeration value="weighting"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="Options">
<xs:list itemType="uds:Option"/>
</xs:simpleType>
<xs:element name="notSupported" type="uds:Options" substitutionGroup="uds:Notification"/>
</xs:schema>